﻿using KwaiXiaoDian.Entity.DO;
using KwaiXiaoDian.Entity.VO.GroupLeader;
using KwaiXiaoDian.Entity.VO.Product;
using SSharing.Frameworks.NetCore.Common.Results;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace KwaiXiaoDian.IService
{
    /// <summary>
    /// 快小店service
    /// </summary>
    public interface IKwaiXiaoDianService
    {
        /// <summary>
        /// 获取团长信息，输入:团长名称或团长id，输出：团长信息列表
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        IList<GroupLeaderInfo> GetGroupLeaderInfo(GetGroupLeaderInfoRequest request);

        /// <summary>
        /// 获取商品信息，输入：团长id，输出：商品信息列表
        /// </summary>
        /// <param name="leaderId"></param>
        /// <returns></returns>
        ApiResult<IList<TProduct>> GetProductInfo(string leaderId, long channelId = 99, int millisecondsTimeout = 500);

        /// <summary>
        /// 获取商品详情，包括物流，店铺和统计数据等信息
        /// </summary>
        /// <param name="distributeItemId"></param>
        /// <returns></returns>
        ApiResult<GetProductDetailInfoResponse> GetProductDetailInfo(string distributeItemId, int millisecondsTimeout = 500);

        /// <summary>
        /// 获取商品达人排行榜信息
        /// </summary>
        /// <param name="distributeItemId"></param>
        /// <param name="productId">商品ID</param>
        /// <returns></returns>
        ApiResult<IList<TProductRank>> GetProductRankInfo(string distributeItemId, string productId);

        /// <summary>
        /// 获取商品SKU信息
        /// </summary>
        /// <param name="productId"></param>
        /// <returns></returns>
        ApiResult<GetProductSkuInfoResponse> GetProductSkuInfo(string productId, int millisecondsTimeout = 500);



    }
}
